import QQMapWX from '../../utils/qqmap-wx-jssdk.min';
Component({
  /**
   * 组件的属性列表
   */
  options: {
    multipleSlots: false, // 在组件定义时的选项中启用多slot支持
    tyleIsolation: 'isolated', //组件样式隔离
    addGlobalClass: true
  },

  /**
   * behaviors
   */
  // behaviors: [pageCommonBehavior],
  /**
   * 父组件传递的值
   */
  properties: {
    optionsData: {
      type: Object,
      value: {},
    }
  },

  /**
   * 组件的初始数据
   */
  data: {
    active: false,
  },

  /**
   * 组件生命周期
   */
  lifetimes: {
    created: function () {

    }, //在组件实例刚刚被创建时执行
    attached: function () {}, // 在组件实例进入页面节点树时执行
    ready: function () {}, // 在组件在视图层布局完成后执行
    moved: function () {}, //	在组件实例被移动到节点树另一个位置时执行
    detached: function () {}, // 在组件实例被从页面节点树移除时执行
    error: function () {}, // 每当组件方法抛出错误时执行	
  },

  /**
   * 组件所在页面的生命周期
   */
  pageLifetimes: {
    show: function () {}, // 页面被展示
    hide: function () {}, // 页面被隐藏
    resize: function (size) {} // 页面尺寸变化
  },

  /**
   * 组件的方法列表
   */
  methods: {
    expandOrShrink() {
      this.setData({
        active: !this.data.active
      })
    },
    toolClick(e) {
      let type = e.currentTarget.dataset.type
      switch (type) {
        case 'dhzx':
          wx.makePhoneCall({
            phoneNumber: this.properties.optionsData.tel,
            success: function () {}
          })
          break;
        case 'yjdh':
          this.toApp()
          break;
        case 'wxzx':
          console.log('wxzz')
          this.setData({
            wxShow: true
          })

          this.triggerEvent('wxShowEvent', true);

          break

      }
    },
    toApp() {
      let that = this
      let qqMap = new QQMapWX({
        key: 'PRDBZ-2BXK3-XOD32-YEYA7-SXDD5-RRBOW' // 必填
      });

      qqMap.geocoder({
        address: that.properties.optionsData.addr, //用户输入的地址（注：地址中请包含城市名称，否则会影响解析效果），如：'北京市海淀区彩和坊路海淀西大街74号'
        complete: res => {
          if (!res.result) {
            console.log('获取经纬度失败');
          } else {
            wx.openLocation({
              latitude: res.result.location.lat,
              longitude: res.result.location.lng,
              scale: 18,
              name: that.properties.optionsData.name,
              address: that.properties.optionsData.addr
            })
          }
        }
      });
    },
  }
})